一、XLinkDeviceEvent
设备事件类,来自设备发送给 SDK 的事件,根据事件的类型可以识别不同的事件,需要将数据进行解析才能获取具体的事件对象。
- 以下方法说明中明确提供不推荐使用的方法,即为不建议开发者调用或者是开发者不应该进行任何数据修改。
- 以下文档中未提及的方法均属于不推荐使用的方法
1、Reference
以下为此类中关联的Class及相关说明
类名 | 类型 | 说明 |
---|---|---|
FirmwareUpgradeTaskRequest | 实体类 | 固件升级任务请求,见下文 |
FirmwareReportUpgradeResult | 实体类 | 固件升级上报结果,见下文 |
FirmwareReportVersion | 实体类 | 固件上报版本号信息,见下文 |
2、Field
以下为此类中的常用字段及说明。
2.1、Attributes
由于设备对象包含的属性较多,不一一罗列其属性的getter/setter
方法,以下字段都支持对应的方法,方法列表中不再赘述。大部分情况下,以下属性为仅读属性
字段名 | 字段类型 | getter支持返回null | 说明 |
---|---|---|---|
type | int | - | 事件类型 |
len | int | - | 数据长度 |
value | byte[] | 是 | 数据内容 |
2.2、type
事件类型常量定义在此类中
字段名 | 类型 | 意义 |
---|---|---|
TYPE_FIRMWARE_CHECK_UPGRADE_TASK | int | 检测升级任务事件类型 |
TYPE_FIRMWARE_REPORT_UPGRADE_RESULT | int | 上报升级结果事件类型 |
TYPE_FIRMWARE_REPORT_VERSION | int | 上报固件版本事件类型 |
3、Methods
以下方法为开发过程常用的方法说明,参数说明及返回值说明。此处仅提供了推荐开发者使用及可能需要使用的方法,部分未列出方法请根据实际情况评估调用。
3.1、construtor
public XLinkDeviceEvent(int type, int len, byte[] value)
- 方法说明:
正常情况下设备事件对象不会由开发者创建,均为 SDK 内网处理数据后创建并回调提供给外部使用。
3.2、parseFrame2DeviceEvent
@Nullable
public <T> T parseFrame2DeviceEvent(@NotNull Class<T> clazz)
- 方法说明:
将当前设备事件解析成有效的事件对象,事件对象类型需要由外部提供,开发者应该通过事件的类型判断当前事件需要解析的对象类。
//判断事件的类型,并解析其具体事件对象使用
if(event.type == TYPE_FIRMWARE_CHECK_UPGRADE_TASK){
FirmwareUpgradeTaskRequest request = event.parseFrame2DeviceEvent(FirmwareUpgradeTaskRequest.class);
}
- 返回值:T,事件对象类型
4、Relevant Class
以下为此类中的关联类或内部类
4.1、FirmwareUpgradeTaskRequest
固件升级任务返回结果对象
字段名 | 类型 | 说明 |
---|---|---|
firmwareType | byte | 固件类型 |
currentVersion | short | 当前固件版本号 |
identifyCode | int | 标识码 |
4.2、FirmwareReportUpgradeResult
固件上报更新结果对象
字段名 | 类型 | 说明 |
---|---|---|
code | byte | 升级结果码 |
firmwareType | byte | 固件类型 |
mod | byte | 设备mod |
currentVersion | short | 当前固件版本号 |
originalVersion | short | 升级前固件版本号 |
identifyCode | int | 识别码 |
taskIdLen | short | 任务ID长度 |
taskId | byte[] | 任务ID |
4.3、FirmwareReportVersion
固件上报版本号结果对象
字段名 | 类型 | 说明 |
---|---|---|
firmwareCount | byte | 固件版本数量,一个设备存在多个模组或MCU或多个识别码分区时可能会有多个,正常情况下为1个 |
firmwareFrames | list | 固件信息列表 |
- FirmwareInfoFrame
字段名 | 类型 | 说明 |
---|---|---|
firmwareType | byte | 固件类型 |
mod | byte | 设备mod |
identifyCode | int | 识别码 |
version | short | 固件版本号 |
二、更新日志
日期 | 更新内容 |
---|---|
2019-01-15 | 初稿,自 X-MQTT SDK v6.2.6版本起 |